<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
        <div id="app">
            {{ date | formatDate }}
        </div>
        <script src="https://unpkg.com/vue/dist/vue.min.js"></script>
        <script>
            var padDate = function(value){
                return value < 10 ? '0' + value : value;
            };
           var app = new Vue({
               el:'#app',                          //     {{ }} 的作用
               data:{
                   date:new Date()
               },
               filters: {
                   formatDate: function (value) {
                       var date = new Date(value);
                       var year = date.getFullYear();
                       var month = padDate(date.getMonth() + 1);
                       var day = padDate(date.getDate());
                       var hours = padDate(date.getHours());
                       var minutes = padDate(date.getMinutes());
                       var seconds = padDate(date.getSeconds());
                       return year + '-' + month + '-' + day + '-' + hours + ':' + minutes + ':' + seconds;
                   }
               },

               mounted:function (){
                   var  _this = this;
                   this.timer = setInterval(function(){
                       _this.date = new Date();
                   },1000);
               },
               beforeDestroy:function(){
                   if (this.timer){
                       clearInterval(this.timer);
                   }
               }
           })    
        </script>
        <!-- {{ message | filterA | filterB }}
        {{ message | filterA('arg1','arg2') }} -->
</body>
</html>
